package com.crm.util;

import java.util.HashMap;
import java.util.Map;

import com.crm.sys.model.CityAndProvinceDic;
import com.crm.user.model.UserAccount;
import com.google.common.collect.ImmutableMap;

import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;

/*import net.crm.sys.model.CityAndProvinceDic;
import net.crm.sys.model.SysTerm;
import net.crm.user.model.UserAccount;*/

/*import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Multimap;*/


/**
 * Constant values used throughout the application.
 *
 * @author CR
 */
public final class Constants {

    private Constants() {
         
    }
    
    /**
     * 在线用户
     */
    public static   Map<String,UserAccount> LINEUSERMAP = new HashMap<String,UserAccount>();
    
    
    
    public static  final BASE64Decoder decoder = new BASE64Decoder();
    public static  final BASE64Encoder encoder = new BASE64Encoder();
    /**
     * 呼叫中心
     *   client_id=""; //
 	    String client_secret = ""; //
 	    String callBak = ""; //
 	   String instanceId = "";//
     */
    public static Map<String,String> CALLCENTER= new HashMap<String,String>();
    
    public static String SQLFileName = "sql.xml";
    
    public static String ResumeFileName  = "resumesql.xml";
    
    public static String ApproveFileName ="approvesql.xml";
    
    public static String AgreementFileName ="agreementsql.xml";
    
    public static String BillFileName ="billsql.xml";
    
    public static Blowfish AURIZTION = new Blowfish("au&lu0thorchen@izayeti0nzywangluo%"); //网站授权码加解密密钥
    
    /**
     * 索要显示时间差设置
     * */
    public static long TIMEDIFFERENCE = 30L;
    
    
    /**
     * 系统主动推送消息
     */
    public static String PUSHMSG= "";
    public static String ROBOTNAME ="轻客";//机器人名称
    public static String ROBOTKEY ="cdd871cb9e2545ca98ac6c6468ec687a";//机器人名称
    /**
     * 在线用户
     */
    //public static   Map<String,UserAccount> LINEUSERMAP = new HashMap<String,UserAccount>();
    /*
    public static interface APPROVECODE{
    	   static  String  RESUME="_resume_apr"; //简历审批CODE
    	   static String CUSTOMER = "_cus_apr"; //客户审批CODE
    	   static String AGREEMENT = "_agreement_apr"; //合同审批CODE
    	   static String BILL = "bill_apr";//签单审批
    	   static String COOPERA = "_coopera_apr";//合作审批
    	   static String COOPERAAGR= "_coopera_agreement_apr";//合作合同审批
    }
    
  */
    
    //审批状态
    
    
    
   public static  ImmutableMap<String,String> CALLING = ImmutableMap.of("1", "汽车", "2", "医疗","3", "建筑", "4", "金融", "5", "环保");
  
   public static  ImmutableMap<String,String> CALLING_CODE = ImmutableMap.of("1", "car_category", "2", "doctor_category","3", "build_category", "4", "jr_category", "5", "hb_category");
   
   public static  ImmutableMap<String,String> CALLING_CODE_VALUE = ImmutableMap.of("car_category", "1", "doctor_category", "2", "build_category","3", "jr_category", "4", "hb_category", "5");
   
   
   //所有城市
   public static Map<String,CityAndProvinceDic> CITYS = new HashMap<String,CityAndProvinceDic>();
  
   public static Blowfish SECURITY =  new Blowfish("passwordkey20171001");  //账号密码加解密
   
   public static Blowfish CONTENT=new Blowfish("contentkey..33444333..");  //内容加解密密钥
   
   public static Blowfish WEBSER=new Blowfish("webkey..7779999..");  //网站接口加解密密钥
   /**
    * 菜单资源
    */
   //public static List<SysTerm> MENULIST = null;
   
   
   /**
    * log记录category
    * 0:简历（人才）记录<br>
    * 1:客户（企业）记录<br>
    * */
   public static interface LOGCATEGORY{
	   static  int  ZERO =0; //简历记录
	   static  int  ONE =1;  //企业记录
   }
   
   /**
    * log记录state
    * 0获取；1放弃；2录入；3修改；4索要；5分配
    * */
   public static interface LOGSTATE{
	   static int ZERO = 0;       //获取
	   static int ONE = 1;        //放弃
	   static int TWO = 2;        //录入
	   static int THREE = 3;      //修改
	   static int FOUR = 4;       //索要
	   static int FIVE = 5;       //分配
	   static int SIX = 6;        //登录
	   static int SEVEN = 7;      //复制内容  包含手机号码或者电话号码的  监控用
	   static int EIGHT = 8;      //系统放弃
   }
   
   
   public static interface MessageType{
		
		
		//用户之间的普通消息
		public static final String TYPE_0 = "0";
		
		//系统向用户发送的普通消息
		public static final String TYPE_2 = "2";
		 
	}
   
   
   public static interface ApproveCode{
		
		
		//付款
		public static final String  PAYMENT= "PAYMENT";
		//到账
		public static final String ARRIVAL = "ARRIVAL";
		//发票
		public static final String BILL = "BILL";
		//代办
		public static final String COMMISSION = "COMMISSION";
		//报销
		 public static final String PAID = "PAID";
		//合同修改申请
		public static final String CONHISTORY = "CONHISTORY";
		 
	}
   
   public static interface ApproveState{
	       	//待审批
	 		public static final int  ZERO= 0;
	 		//审批中
	 		public static final int  ONE= 1;
	 		//通过  
	 		public static final int TOW = 2;
	 		//驳回
	 		public static final int THREE = 3;
	 		//完成
	 		public static final int FOUR = 4;
   }
   
   public static interface MoneylogState{
       //待收付款
 		public static final int  ZERO= 0;
 		//已收付款
 		public static final int  ONE= 1; 
  }

   //合同状态  
   public static interface ContactsState{
	    //0 作废 
 		public static final int  ZERO= 0;
 		// 1 待回款 
 		public static final int  ONE= 1;
 		// 2 待付款  
 		public static final int TOW = 2;
 		//3 回款中
 		public static final int THREE = 3;
 		//4  付款中
 		public static final int FOUR = 4;
 		//5  已完成回款 
 		public static final int FIVE = 5;
 		//6  已完成付款 
 		public static final int SIX = 6;
 		//7 已上传合同
 		public static final int SEV = 7;
 		//8 已完成
 		public static final int EIG = 8;
		//测试添加
 		//未上传合同但已有付款记录
 		public static final int SEV_FOUR = 74;
 		//未上传合同但已完成付款
 		public static final int SEV_SIX = 76;
 }
   
   public static interface TipServer{
	   public static String TipServerUrl ="http://192.168.1.158/xiaoyou/qq?key=123456";//群发地址
	/*   public static String GroupName  = "";//群名称
	   public static String GroupNumber  = "";// 群id
*/   }
   
   public  static String GroupName  = "";//群名称
   public  static String GroupNumber  = "";// 群id
   
   
   
   /*为统计做的配置*/
   public static Integer BEGINYEAR = 2017; //设置默认开始年份
   
   public static interface StatisticsSign{
	   //1月度签单数
	   public static final int  ONE = 1;
	   //2月度收款
	   public static final int  TOW = 2;
	   //3月度付款
	   public static final int  THREE = 3;
	   //4月度垫款
	   public static final int  FOUR = 4;
	   //5年度签单数
	   public static final int  FIVE = 5;
	   //6年度收款
	   public static final int  SIX = 6;
	   //7年度付款
	   public static final int  SEV = 7;
	   //8年度垫款
	   public static final int  EIG = 8;
	   //9日签单数
	   public static final int  NIG = 9;
	   //10日收款
	   public static final int  TEN = 10;
	   //11日付款
	   public static final int  ELE = 11;
	   //12日垫款
	   public static final int  TWE = 12;
   }
   
}